/*    */ package com.zimbra.cs.index.query;
/*    */ 
/*    */ import com.google.common.collect.Lists;
/*    */ import java.util.ArrayList;
/*    */ import java.util.Collection;
/*    */ import java.util.List;
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ 
/*    */ public final class TypeQuery
/*    */   extends LuceneQuery
/*    */ {
/*    */   private TypeQuery(String what)
/*    */   {
/* 35 */     super("type:", "type", what);
/*    */   }
/*    */   
/*    */ 
/*    */ 
/*    */ 
/*    */   public static Query createQuery(String what)
/*    */   {
/* 43 */     Collection<String> types = lookup(AttachmentQuery.CONTENT_TYPES_MULTIMAP, what);
/* 44 */     if (types.size() == 1) {
/* 45 */       return new TypeQuery((String)Lists.newArrayList(types).get(0));
/*    */     }
/* 47 */     List<Query> clauses = new ArrayList(types.size() * 2 - 1);
/* 48 */     for (String contentType : types) {
/* 49 */       if (!clauses.isEmpty()) {
/* 50 */         clauses.add(new ConjQuery(ConjQuery.Conjunction.OR));
/*    */       }
/* 52 */       clauses.add(new TypeQuery(contentType));
/*    */     }
/* 54 */     return new SubQuery(clauses);
/*    */   }
/*    */ }


/* Location:              /home/mint/zimbrastore.jar!/com/zimbra/cs/index/query/TypeQuery.class
 * Java compiler version: 7 (51.0)
 * JD-Core Version:       0.7.1
 */